home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-11 / jbmake.zip / JBMAKE.DOC < prev    next >
Text File  |  1993-01-04  |  5KB  |  151 lines

  1. 8:13pm Feb 06,1989
  2.  
  3. Thank you for taking a look at jbMake.  I hope it will be of use to you.
  4. jbMake's origin is partially an outgrowth of my interest in C and a 
  5. frustration of trying to figure out how to use some of the make utilities 
  6. out there.
  7.  
  8. jbMake was designed originally for in house use, as such, it is biased
  9. towards our programming standards, (if there is such a thing).  As I have
  10. time and the inclination I try and incorporate suggestion by my co-workers.
  11. If you have suggestions to make jbMake better, please let me know and I
  12. will do my best to contemplate them.
  13.  
  14. Features:
  15.   jbMake is written in 100% Turbo C.  This makes it fairly fast. 
  16.   
  17.   jbMake is under 20k. I have tried to make it as lean as possible.
  18.  
  19.   jbMake will catch changes made to *.prg(s) that are made under the
  20.   1 minute mark.  This is great if you are using sidekick.
  21.  
  22.  
  23. Drawbacks
  24.   jbMake does not support clip files (*.clp) at this time.  However that
  25.   option will be forthcomming.
  26.  
  27.   jbMake compiles each *.prg into its own *.obj.  Depending on how you
  28.   normally compile, this may or may not be a drawback.
  29.  
  30.   jbMake is for CLIPPER.  It won't invoke other compilers.
  31.  
  32.  
  33. And now for a little explanation.
  34. A. Compiling
  35.    1.  All of the systems we produce have a certain set of standards. 
  36.        jbMake is designed to follow those standards, however there are ways
  37.        around this.
  38.  
  39.        jbMake incorporates the -m switch for clipper.  This produces a
  40.        single *.obj for each *.prg compiled.  At this time this is the only
  41.        option supported by jbMake.
  42.  
  43.        By default jbMake will compile all ??*.prg files in a directory,
  44.        where ?? is the first 2 characters of ??*.exe.  That's just the way
  45.        we do it here.
  46.  
  47.        Example: to compile files for vms.exe, jbMake vms
  48.  
  49.                 This will compile all vm*.prg files which have been
  50.                 modified since the file VMS.EXE was created. 
  51.                 It will stop only after compiling all vm*.prg files which
  52.                 have been modified, or after CLIPPER encounters an error.
  53.  
  54.        To alter the compiling environment the following switches can be
  55.        thrown:
  56.  
  57.        'o' jbMake vms -o, override naming conventions, this will compile
  58.            all *.prg files in the current directory that have been modified
  59.            since the last update of vms.exe
  60.  
  61.        'i' jbMake vms -i, ignore any errors during the compile process. 
  62.            This will compile all ??*.prg or *.prg files without stopping
  63.            after any compiler errors.
  64.  
  65.  
  66. B. Linking
  67.    1. In order to link you MUST have a link file.  Each linker has its own
  68.       syntax for its respective linkfile.  I will assume you know how to
  69.       create that, if you don't, get a hold of me or someone else who can
  70.       help.
  71.  
  72.       To link you will need to specify which linker you want to use by the
  73.       switch you throw:
  74.  
  75.       't' for Tlink from Borland Int'l, the very fastest but no overlay
  76.           ability.
  77.  
  78.  
  79.       'm' for Link from MicroSoft, you need this if you are using Flipper  
  80.           or some of the other libraries.
  81.  
  82.       'p' for Plink86 from Phoenix, slow, slow, slow.  But if your into
  83.           overlays...
  84.  
  85.       Other link switches:
  86.  
  87.       'w' wait after compiling before linking is started.  I just threw
  88.           this option in for the heck of it.
  89.  
  90.       'r' run the compiled and linked program after linking is finished.
  91.  
  92.  
  93.  
  94. C. Examples
  95.   1. jbMake vms
  96.      This will compile all vm*.prg(s) modified since vms.exe was created. 
  97.      No linking will take place.
  98.      
  99.      
  100.   2. jbMake vms -tr This will compile all vm*.prg(s) modified since
  101.      vms.exe was created. jbMake will then link the file vms.lnk.  After
  102.      linking, jbMake will execute the program vms.exe.
  103.  
  104.  
  105.   3. jbMake vms -otr
  106.      This will compile all *.prg(s) modified since vms.exe was created. 
  107.      jbMake will then link the file vms.lnk.  After linking jbMake will
  108.      execute the program vms.exe
  109.  
  110.   4. jbMake vms -itrw
  111.      This will compile all vm*.prg(s) modified since vms.exe was created. 
  112.      If any errors are detected they will be ignored.  If no errors are
  113.      detected, jbMake will link the file vms.lnk.  After linking jbMake
  114.      will wait for a keypress then execute the program vms.exe.
  115.  
  116.  
  117.  
  118. D. Installation:
  119.   1. You will need to put jbMake in a directory that is mapped to your
  120.      path.
  121.  
  122.   2. Clipper and your linker must also be in a directory that is mapped to
  123.      your path.
  124.  
  125.   3. Example:
  126.      If you put jbMake in C:\UTILITY, your path statement should include-
  127.        path=C:\UTILITY;C:\CLIPPER...
  128.  
  129.  
  130.  
  131. E. Future enhancements.
  132.   1. As I said earlier, jbMake basically used in-house.  As I have the time
  133.      I am adding additions and enhancements to it.  As far as future
  134.      enhancements go i can see:
  135.  
  136.      a. redirection of errors to an error file.
  137.      b. compilation based on *.clp files
  138.      c. support of alternate *.lnk file names
  139.      d. support of clipper switches other than -m
  140.  
  141.   2. I don't want jbMake to become so difficult to use it defeats its own
  142.      purpose.  I am, therefore, intentionally trying to keep it as lean as
  143.      possible yet at the same time as powerful as possible.
  144.  
  145.   3. If you've got some ideas please feel free to send them my way:
  146.  
  147.      jeff d. bryant
  148.      4485 n. john albert
  149.      fresno, ca
  150.      93726
  151.